#ifndef __DIRECTORY_BLOCK_H__
#define __DIRECTORY_BLOCK_H__

#include "directory.h"
#include "block.h"
#include "types.h"
#include <vector>



#define DIRLIST_SIZE 32
#define DIR_SIZE 16

struct directory_block_t
{
	directory_t dirs[DIRLIST_SIZE][DIR_SIZE];
};



class DirectoryBlock : public Block
{
	private:
		directory_block_t * dirBlock;
		std::vector<Directory*>* dirs;

	public:
		DirectoryBlock(FILE*, unsigned long);
		virtual ~DirectoryBlock();
		void loadDirs();
		virtual void print();
		std::vector<Directory*>* getDirs() { return dirs; }
		std::string getNameFromNr(int);
};

#endif
